Historically, in order to perform most non-trivial tasks, individuals and companies have turned to specialized groups of people that have joined together to perform particular tasks. For example, if a company exists to produce particular consumer goods, the company would typically hire and maintain groups of workers who were specially trained to design and/or manufacture such goods, or would instead contract out one or more such operations to external groups (e.g., a product design firm, a manufacturing operation, etc.) that were similarly organized and trained. By forming and maintaining such specialized groups, some types of operational costs may be reduced, such as the repeated costs of identifying or training appropriate personnel each time that a task is to be performed.
While some types of benefits may result from the creation and maintenance of specialized groups of people for performing particular types of tasks, a variety of inefficiencies with such approaches also exist. For example, if a particular type of task is needed by a company only occasionally, it may be impractical for the company to maintain a particular group of people that are specialized for that task. Instead, the company may maintain people for the primary tasks performed by the company, and may outsource other types of tasks by hiring third-party groups or individuals that have expertise in the other types of tasks—such specialized third-party groups or individuals may often be able to perform those tasks at a cost lower than the cost that the company would have incurred to perform such tasks itself. As one particular example, many companies may occasionally need specialized software to assist in the operation of the company, but may not maintain a group of software developers who are able to produce such software—in such cases, the company may hire a third-party software development group that will produce appropriate custom software for the company.
However, such outsourcing of tasks also suffers from various limitations. For example, significant time and costs may be needed to identify external groups that are qualified to perform a particular task, as well as to manage a selected external group through various stages of performance of a non-trivial task. In addition, outsourcing may be less effective in contexts where the task or operation being outsourced is not well-defined, such as a product design task that involves developing a product from initial concept to detailed manufacturing specification.
As use of the Internet and the World Wide Web (“the Web”) have become increasingly prevalent, the costs for performing some types of interactions between individuals and companies have decreased. For example, if a company or individual is able to create and provide a detailed definition of a small piece of computer software, Web sites exist where a software contractor may be hired to produce the computer software. More generally, other Web sites have been created where an individual or company may obtain various types of information for a fee, such as by hiring an expert in a particular area to provide indicated information, or by submitting a question to a company that employs experts to provide answers in one or more areas. However, such existing Web sites may be of use in only the limited situations for which those Web sites have been created, and similarly suffer from various of the other limitations related to outsourcing.